Skip to content

fix(release): unblock win32-x64 binary build (corepack EEXIST)#27

Merged
ajag408 merged 1 commit into
mainfrom
fix-release-corepack-win32-eexist
Jun 26, 2026
Merged

fix(release): unblock win32-x64 binary build (corepack EEXIST)#27
ajag408 merged 1 commit into
mainfrom
fix-release-corepack-win32-eexist

Conversation

@ajag408

@ajag408 ajag408 commented Jun 24, 2026

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • Chores
    • Updated ownership settings for select package-related files.
    • Improved release workflow reliability by making Corepack installation more robust and allowing binary build jobs to continue running even if one matrix entry fails.

The v1.3.0 release run failed on the build-binaries (win32-x64) leg at the Install pnpm step:
npm error EEXIST: file already exists … C:\npm\prefix\yarn. The GitHub Windows runner already ships corepack's yarn shim, so npm install -g corepack@0.35.0 collides. With default fail-fast: true, this also canceled the otherwise-healthy linux/darwin legs.

  • Add --force to the corepack install in all three release.yml jobs (overwrites the pre-existing shim; no-op on Linux/macOS).
  • Add fail-fast: false to the build-binaries matrix so one platform failure no longer cancels the others (diagnostics only — create-release still requires all four legs).
    No Shield logic, package output, or runtime change. Windows-runner packaging fix only.

QA Proof

  • Root cause from the failed run: EEXIST C:\npm\prefix\yarn on the win32 Install pnpm step
  • The rest of the run was healthy: security-audit passed, harden-runner egress clean (expected hosts only), Socket "nothing to report", darwin attestations + artifacts produced.
  • Cannot be E2E-tested locally (GitHub-hosted Windows runner) — see below.

What Needs to Be Verified on the Re-tag Release Run

  • build-binaries (win32-x64) passes the Install pnpm step and builds shield-windows-x64.exe
  • All four legs build (with fail-fast: false, all run regardless)
  • create-release produces the GitHub release with all binaries + .sha256
  • (then resume the full hardened-release verification runbook)

QA Team Notification

  • N/A pre-merge — validation is the re-tagged v1.3.0 release run (binary track needs no approval; npm publish still gated on production environment approval)

@ajag408 ajag408 requested review from aditya172926, auralshin and dnehl and removed request for petar-omni June 24, 2026 05:51
@coderabbitai

coderabbitai Bot commented Jun 24, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Updates .github/CODEOWNERS to replace the owner set for .npmrc, package.json, and pnpm-lock.yaml. In .github/workflows/release.yml, adds --force to the npm install -g corepack@0.35.0 command in the Security Audit, Publish to NPM, and Build Binaries jobs, and sets fail-fast: false on the build-binaries matrix.

Changes

CI and Repo Configuration Updates

Layer / File(s) Summary
CODEOWNERS: reassign dependency file owners
.github/CODEOWNERS
Replaces the owner list for .npmrc, package.json, and pnpm-lock.yaml rules with @ajag408, @Philippoes, and @jdomingos, removing @petar-omni and @raiseerco.
Release workflow: force Corepack install and disable fail-fast
.github/workflows/release.yml
Adds --force to npm install -g corepack@0.35.0 in the Security Audit, Publish to NPM, and Build Binaries jobs; sets fail-fast: false on the Build Binaries matrix strategy.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

  • stakekit/shield#20: Also modifies .github/CODEOWNERS to change ownership assignments for .npmrc, package.json, and pnpm-lock.yaml.

Suggested reviewers

  • jdomingos
  • Philippoes
  • petar-omni

Poem

🐇 Hippity-hop, new owners appear,
For .npmrc and package.json so dear!
With --force the Corepack shall install,
And fail-fast: false won't cancel them all.
This bunny approves — hop along, carry on! 🌟

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly matches the main change: fixing the release workflow to unblock the Windows binary build caused by a corepack EEXIST issue.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix-release-corepack-win32-eexist

Comment @coderabbitai help to get the list of available commands.

@ajag408 ajag408 merged commit f9b0f49 into main Jun 26, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants